package com.bci.pwtz.service;

import java.util.List;
import java.util.Map;

import com.bci.pwtz.exception.PwtzDatabaseException;
import com.bci.pwtz.mysql.model.BatchUpdate;
/**
 * 批量修改
 * @author Administrator
 *
 */
public interface BatchUpdateService {
	/**
	 * 查询所有需要修改设备的字段
	 * @return 
	 * 	key：设备类型。对应T_DEVICE_TYPE的DEVICE_TYPE_ID<br/>
	 *  value : 对应设备的可修改字段信息
	 */
	public Map<String, List<BatchUpdate>> queryAll() throws PwtzDatabaseException;
	
	/**
	 * 通过设备id查询可修改列
	 * @param deviceID 设备id
	 * @return
	 */
	public List<BatchUpdate> queryByDeviceID(String deviceID) throws PwtzDatabaseException;
	/**
	 * 执行批量修改
	 * @param bacthDeviceType 设备类型。对应T_DEVICE_TYPE的DEVICE_TYPE_ID<br/>
	 * @param deviceIDs 需要修改设备id
	 * @param columnAndVal 需要修改的值
	 * @return 成功条数
	 */
	public int bacthUpdate(String[] deviceIDs,Long bacthDeviceType,Map<String,String> columnAndVal) throws PwtzDatabaseException;
}
